//============================================================================
// Name        : ListCpp.cpp
// Author      : leamiko
// Version     :
// Copyright   : by leamiko
// Description : Hello World in C++, Ansi-style
//============================================================================

#include <iostream>
using namespace std;

struct Node{
	int data;
	Node *link; // 声明
};

typedef Node* NodePtr; // 指向节点的指针类型

void head_insert(NodePtr& head, int the_number);
NodePtr search(NodePtr head, int target);

//int main() {
//
//	// 定义头指针
//	NodePtr head;
//	head = new Node; // 创建动态变量，第一新节点
//	head->data = 3;
//	head->link = NULL;
//
//	NodePtr iter;
//	for (iter = head; iter != NULL; iter = iter->link) {
//		std::cout << (iter->data);
//	}
//
//	return 0;
//}

//
void head_insert(NodePtr& head, int the_number) {
	NodePtr temp_ptr = new Node;
	temp_ptr->data = the_number;
	if (head == NULL) {
		temp_ptr->link = NULL;
	}
	temp_ptr->link = head;
	head = temp_ptr; // 指向表头
}

NodePtr search(NodePtr head, int target) {
	NodePtr here = head;
	if (here == NULL) {
		return NULL;
	}
	while(here->data != target && here->link!=NULL) {
		here = here->link;
	}

	if (here->data == target) {
		return here;
	} else {
		return NULL;
	}
}
